home *** CD-ROM | disk | FTP | other *** search
/ Team Palmtops 7 / Palmtops_numero07.iso / WinCE / SDKWindowsCE / HandHeldPCPro30 / sdk.exe / Jupiter SDK / data1.cab / Emulation_Include_Files / rapi.h < prev    next >
Encoding:
C/C++ Source or Header  |  1999-02-19  |  14.7 KB  |  441 lines

  1. // --------------------------------------------------------------------------
  2. //
  3. // Copyright (c) 1995-1997, Microsoft Corporation
  4. //
  5. // Module:
  6. //
  7. //     rapi.h
  8. //
  9. // Purpose:
  10. //
  11. //    Master include file for Windows CE Remote API
  12. //
  13. // --------------------------------------------------------------------------
  14.  
  15. #ifndef RAPI_H
  16. #define RAPI_H
  17.  
  18. #include <windows.h>
  19.  
  20. //
  21. // The Windows CE WIN32_FIND_DATA structure differs from the
  22. // Windows WIN32_FIND_DATA stucture so we copy the Windows CE
  23. // definition to here so that both sides match.
  24. //
  25. typedef struct _CE_FIND_DATA {
  26.     DWORD    dwFileAttributes;
  27.     FILETIME ftCreationTime;
  28.     FILETIME ftLastAccessTime;
  29.     FILETIME ftLastWriteTime;
  30.     DWORD    nFileSizeHigh;
  31.     DWORD    nFileSizeLow;
  32.     DWORD    dwOID;
  33.     WCHAR    cFileName[MAX_PATH];
  34. } CE_FIND_DATA, *LPCE_FIND_DATA;
  35.  
  36. typedef CE_FIND_DATA** LPLPCE_FIND_DATA;
  37.  
  38. //
  39. // These are flags for CeFindAllFiles
  40. //
  41. #define FAF_ATTRIBUTES      ((DWORD) 0x01)
  42. #define FAF_CREATION_TIME   ((DWORD) 0x02)
  43. #define FAF_LASTACCESS_TIME ((DWORD) 0x04)
  44. #define FAF_LASTWRITE_TIME  ((DWORD) 0x08)
  45. #define FAF_SIZE_HIGH       ((DWORD) 0x10)
  46. #define FAF_SIZE_LOW        ((DWORD) 0x20)
  47. #define FAF_OID             ((DWORD) 0x40)
  48. #define FAF_NAME            ((DWORD) 0x80)
  49. #define FAF_FLAG_COUNT      ((UINT)  8)
  50. #define FAF_ATTRIB_CHILDREN ((DWORD)            0x01000)
  51. #define FAF_ATTRIB_NO_HIDDEN ((DWORD)            0x02000)
  52. #define FAF_FOLDERS_ONLY    ((DWORD)            0x04000)
  53. #define FAF_NO_HIDDEN_SYS_ROMMODULES ((DWORD)    0x08000)
  54. #define FAF_GETTARGET        ((DWORD)            0x10000)
  55.  
  56. #define FAD_OID             ((WORD) 0x01)
  57. #define FAD_FLAGS           ((WORD) 0x02)
  58. #define FAD_NAME            ((WORD) 0x04)
  59. #define FAD_TYPE            ((WORD) 0x08)
  60. #define FAD_NUM_RECORDS     ((WORD) 0x10)
  61. #define FAD_NUM_SORT_ORDER  ((WORD) 0x20)
  62. #define FAD_SIZE            ((WORD) 0x40)
  63. #define FAD_LAST_MODIFIED   ((WORD) 0x80)
  64. #define FAD_SORT_SPECS      ((WORD) 0x100)
  65. #define FAD_FLAG_COUNT      ((UINT) 9)
  66.  
  67. #ifndef FILE_ATTRIBUTE_INROM
  68. #define FILE_ATTRIBUTE_INROM        0x00000040
  69. #endif
  70. #ifndef FILE_ATTRIBUTE_ROMSTATICREF
  71. #define FILE_ATTRIBUTE_ROMSTATICREF 0x00001000
  72. #endif
  73. #ifndef FILE_ATTRIBUTE_ROMMODULE
  74. #define FILE_ATTRIBUTE_ROMMODULE    0x00002000
  75. #endif
  76.  
  77. //
  78. // The following is not a standard Windows CE File Attribute.
  79. //
  80. #ifndef FILE_ATTRIBUTE_HAS_CHILDREN
  81. #define FILE_ATTRIBUTE_HAS_CHILDREN 0x00010000
  82. #endif
  83. #ifndef FILE_ATTRIBUTE_SHORTCUT
  84. #define FILE_ATTRIBUTE_SHORTCUT        0x00020000
  85. #endif
  86.  
  87. #undef  INTERFACE
  88. #define INTERFACE   IRAPIStream
  89.  
  90. typedef enum tagRAPISTREAMFLAG
  91. {
  92.     STREAM_TIMEOUT_READ
  93. } RAPISTREAMFLAG;
  94.  
  95. DECLARE_INTERFACE_ (IRAPIStream,  IStream)
  96. {
  97.         STDMETHOD(SetRapiStat)( THIS_ RAPISTREAMFLAG Flag, DWORD dwValue) PURE;
  98.         STDMETHOD(GetRapiStat)( THIS_ RAPISTREAMFLAG Flag, DWORD *pdwValue) PURE;
  99. };
  100.  
  101. // RAPI extension on Windows CE (e.g., MyFunctionFOO) called via CeRapiInvoke should be declared as:
  102. // EXTERN_C RAPIEXT MyFunctionFOO;
  103. typedef  HRESULT (STDAPICALLTYPE RAPIEXT)(
  104.          DWORD            cbInput,            // [IN]
  105.          BYTE            *pInput,            // [IN]
  106.          DWORD            *pcbOutput,             // [OUT]
  107.          BYTE            **ppOutput,            // [OUT]
  108.          IRAPIStream    *pIRAPIStream        // [IN]
  109.          );
  110.  
  111. //
  112. // The following definitions are for the client side only,
  113. // because they are already defined on Windows CE.
  114. //
  115. #ifndef UNDER_CE
  116.  
  117. #include <stddef.h>
  118.  
  119. typedef struct STORE_INFORMATION {
  120.     DWORD dwStoreSize;
  121.     DWORD dwFreeSize;
  122. } STORE_INFORMATION, *LPSTORE_INFORMATION;
  123.  
  124. typedef DWORD CEPROPID;
  125. typedef CEPROPID *PCEPROPID;
  126. #define TypeFromPropID(propid) LOWORD(propid)
  127.  
  128. typedef DWORD CEOID;
  129. typedef CEOID *PCEOID;
  130.  
  131. typedef struct  _CEGUID {
  132.     DWORD Data1;
  133.     DWORD Data2;
  134.     DWORD Data3;
  135.     DWORD Data4;
  136. }    CEGUID;
  137. typedef CEGUID *PCEGUID;
  138.  
  139. typedef struct _CENOTIFICATION {
  140.     DWORD dwSize;
  141.     DWORD dwParam;
  142.     UINT  uType;
  143.     CEGUID guid;
  144.     CEOID  oid;
  145.     CEOID  oidParent;
  146. } CENOTIFICATION;
  147.  
  148. #define CEDB_EXNOTIFICATION    0x00000001
  149. typedef struct _CENOTIFYREQUEST {
  150.     DWORD dwSize;
  151.     HWND  hwnd;
  152.     DWORD dwFlags;
  153.     HANDLE hHeap;
  154.     DWORD  dwParam;
  155. } CENOTIFYREQUEST;
  156. typedef CENOTIFYREQUEST *PCENOTIFYREQUEST;
  157.  
  158. typedef struct _CEFILEINFO {
  159.     DWORD   dwAttributes;
  160.     CEOID   oidParent;
  161.     WCHAR   szFileName[MAX_PATH];
  162.     FILETIME ftLastChanged;
  163.     DWORD   dwLength;
  164. } CEFILEINFO;
  165.  
  166. typedef struct _CEDIRINFO {
  167.     DWORD   dwAttributes;
  168.     CEOID   oidParent;
  169.     WCHAR   szDirName[MAX_PATH];
  170. } CEDIRINFO;
  171.  
  172. typedef struct _CERECORDINFO {
  173.     CEOID  oidParent;
  174. } CERECORDINFO;
  175.  
  176. #define CEDB_SORT_DESCENDING        0x00000001
  177. #define CEDB_SORT_CASEINSENSITIVE   0x00000002
  178. #define CEDB_SORT_UNKNOWNFIRST      0x00000004
  179. #define CEDB_SORT_GENERICORDER      0x00000008
  180.  
  181. typedef struct _SORTORDERSPEC {
  182.     CEPROPID  propid;
  183.     DWORD     dwFlags;
  184. } SORTORDERSPEC;
  185.  
  186. #define CEDB_MAXDBASENAMELEN  32
  187. #define CEDB_MAXSORTORDER     4
  188.  
  189. #define CEDB_VALIDNAME      0x0001
  190. #define CEDB_VALIDTYPE      0x0002
  191. #define CEDB_VALIDSORTSPEC  0x0004
  192. #define CEDB_VALIDMODTIME   0x0008
  193. #define CEDB_VALIDDBFLAGS   0x0010
  194. #define CEDB_VALIDCREATE (CEDB_VALIDNAME|CEDB_VALIDTYPE|CEDB_VALIDSORTSPEC|CEDB_VALIDDBFLAGS)
  195.  
  196. #define CEDB_NOCOMPRESS     0x00010000
  197.  
  198. typedef struct _CEDBASEINFO {
  199.     DWORD   dwFlags;
  200.     WCHAR   szDbaseName[CEDB_MAXDBASENAMELEN];
  201.     DWORD   dwDbaseType;
  202.     WORD    wNumRecords;
  203.     WORD    wNumSortOrder;
  204.     DWORD   dwSize;
  205.     FILETIME ftLastModified;
  206.     SORTORDERSPEC rgSortSpecs[CEDB_MAXSORTORDER];
  207. } CEDBASEINFO;
  208.  
  209. typedef struct _CEDB_FIND_DATA {
  210.     CEOID       OidDb;
  211.     CEDBASEINFO DbInfo;
  212. } CEDB_FIND_DATA, *LPCEDB_FIND_DATA;
  213.  
  214. typedef CEDB_FIND_DATA ** LPLPCEDB_FIND_DATA;
  215.  
  216. #define OBJTYPE_INVALID     0
  217. #define OBJTYPE_FILE        1
  218. #define OBJTYPE_DIRECTORY   2
  219. #define OBJTYPE_DATABASE    3
  220. #define OBJTYPE_RECORD      4
  221.  
  222. typedef struct _CEOIDINFO {
  223.     WORD  wObjType;
  224.     WORD  wPad;
  225.     union {
  226.         CEFILEINFO   infFile;
  227.         CEDIRINFO    infDirectory;
  228.         CEDBASEINFO  infDatabase;
  229.         CERECORDINFO infRecord;
  230.     };
  231. } CEOIDINFO;
  232.  
  233. #define CEDB_AUTOINCREMENT      0x00000001
  234.  
  235. #define CEDB_SEEK_CEOID         0x00000001
  236. #define CEDB_SEEK_BEGINNING     0x00000002
  237. #define CEDB_SEEK_END           0x00000004
  238. #define CEDB_SEEK_CURRENT       0x00000008
  239. #define CEDB_SEEK_VALUESMALLER     0x00000010
  240. #define CEDB_SEEK_VALUEFIRSTEQUAL  0x00000020
  241. #define CEDB_SEEK_VALUEGREATER     0x00000040
  242. #define CEDB_SEEK_VALUENEXTEQUAL   0x00000080
  243.  
  244. typedef struct _CEBLOB {
  245.     DWORD       dwCount;
  246.     LPBYTE      lpb;
  247. } CEBLOB;
  248.  
  249. #define CEVT_I2       2
  250. #define CEVT_UI2      18
  251. #define CEVT_I4       3
  252. #define CEVT_UI4      19
  253. #define CEVT_FILETIME 64
  254. #define CEVT_LPWSTR   31
  255. #define CEVT_BLOB     65
  256. #define CEVT_BOOL     11
  257. #define    CEVT_R8       5
  258.  
  259. typedef union _CEVALUNION {
  260.     short           iVal;
  261.     USHORT          uiVal;
  262.     long            lVal;
  263.     ULONG           ulVal;
  264.     FILETIME        filetime;
  265.     LPWSTR          lpwstr;
  266.     CEBLOB          blob;
  267.     BOOL            boolVal;
  268.     double          dblVal;
  269. } CEVALUNION;
  270.  
  271. #define CEDB_PROPNOTFOUND 0x0100
  272. #define CEDB_PROPDELETE   0x0200
  273. typedef struct _CEPROPVAL {
  274.     CEPROPID    propid;
  275.     WORD        wLenData;
  276.     WORD        wFlags;
  277.     CEVALUNION  val;
  278. } CEPROPVAL, *PCEPROPVAL;
  279.  
  280. #define CEDB_MAXDATABLOCKSIZE  4092
  281. #define CEDB_MAXPROPDATASIZE   (CEDB_MAXDATABLOCKSIZE*16)
  282. #define CEDB_MAXRECORDSIZE     (128*1024)
  283.  
  284. #define CEDB_ALLOWREALLOC  0x00000001
  285.  
  286. #define CREATE_SYSTEMGUID(pguid) (memset((pguid), 0, sizeof(CEGUID)))
  287. #define CREATE_INVALIDGUID(pguid) (memset((pguid), -1, sizeof(CEGUID)))
  288.  
  289. #define CHECK_SYSTEMGUID(pguid) !((pguid)->Data1|(pguid)->Data2|(pguid)->Data3|(pguid)->Data4)
  290. #define CHECK_INVALIDGUID(pguid) !~((pguid)->Data1&(pguid)->Data2&(pguid)->Data3&(pguid)->Data4)
  291.  
  292. #define SYSMEM_CHANGED    0
  293. #define SYSMEM_MUSTREBOOT 1
  294. #define SYSMEM_REBOOTPENDING 2
  295. #define SYSMEM_FAILED 3
  296.  
  297. typedef struct _CEOSVERSIONINFO{
  298.     DWORD dwOSVersionInfoSize; 
  299.     DWORD dwMajorVersion; 
  300.     DWORD dwMinorVersion; 
  301.     DWORD dwBuildNumber; 
  302.     DWORD dwPlatformId; 
  303.     WCHAR szCSDVersion[ 128 ]; 
  304. } CEOSVERSIONINFO, *LPCEOSVERSIONINFO;
  305.  
  306. #define AC_LINE_OFFLINE                 0x00
  307. #define AC_LINE_ONLINE                  0x01
  308. #define AC_LINE_BACKUP_POWER            0x02
  309. #define AC_LINE_UNKNOWN                 0xFF
  310.  
  311. #define BATTERY_FLAG_HIGH               0x01
  312. #define BATTERY_FLAG_LOW                0x02
  313. #define BATTERY_FLAG_CRITICAL           0x04
  314. #define BATTERY_FLAG_CHARGING           0x08
  315. #define BATTERY_FLAG_NO_BATTERY         0x80
  316. #define BATTERY_FLAG_UNKNOWN            0xFF
  317.  
  318. #define BATTERY_PERCENTAGE_UNKNOWN      0xFF
  319.  
  320. #define BATTERY_LIFE_UNKNOWN        0xFFFFFFFF
  321.  
  322. typedef struct _SYSTEM_POWER_STATUS_EX {
  323.     BYTE ACLineStatus;
  324.     BYTE BatteryFlag;
  325.     BYTE BatteryLifePercent;
  326.     BYTE Reserved1;
  327.     DWORD BatteryLifeTime;
  328.     DWORD BatteryFullLifeTime;
  329.     BYTE Reserved2;
  330.     BYTE BackupBatteryFlag;
  331.     BYTE BackupBatteryLifePercent;
  332.     BYTE Reserved3;
  333.     DWORD BackupBatteryLifeTime;
  334.     DWORD BackupBatteryFullLifeTime;
  335. }   SYSTEM_POWER_STATUS_EX, *PSYSTEM_POWER_STATUS_EX, *LPSYSTEM_POWER_STATUS_EX;
  336.  
  337. //
  338. // MessageId: CERAPI_E_ALREADYINITIALIZED
  339. //
  340. //  CeRapiInit(Ex) has already been successfully called
  341. //
  342. #define CERAPI_E_ALREADYINITIALIZED     0x80041001
  343.  
  344. typedef struct _RAPIINIT
  345. {
  346.     DWORD cbSize;
  347.     HANDLE heRapiInit;
  348.     HRESULT hrRapiInit;
  349. } RAPIINIT;
  350.  
  351. STDAPI CeRapiInitEx(RAPIINIT*);
  352. STDAPI CeRapiInit();
  353. STDAPI CeRapiUninit();
  354. STDAPI CeRapiGetError(void);
  355. STDAPI CeRapiFreeBuffer(LPVOID);
  356. STDAPI_( HRESULT ) CeRapiInvoke(LPCWSTR, LPCWSTR,DWORD,BYTE *, DWORD *,BYTE **, IRAPIStream **,DWORD);
  357.  
  358. STDAPI_(CEOID)  CeCreateDatabase     (LPWSTR, DWORD, WORD, SORTORDERSPEC*);
  359. STDAPI_(BOOL  ) CeDeleteDatabase     (CEOID);
  360. STDAPI_(BOOL  ) CeDeleteRecord       (HANDLE, CEOID);
  361. STDAPI_(HANDLE) CeFindFirstDatabase  (DWORD);
  362. STDAPI_(CEOID)  CeFindNextDatabase    (HANDLE);
  363. STDAPI_(BOOL  ) CeOidGetInfo         (CEOID, CEOIDINFO*);
  364. STDAPI_(HANDLE) CeOpenDatabase       (PCEOID, LPWSTR, CEPROPID, DWORD, HWND);
  365. STDAPI_(CEOID)  CeReadRecordProps    (HANDLE, DWORD, LPWORD, CEPROPID*, LPBYTE*, LPDWORD);
  366. STDAPI_(CEOID)  CeSeekDatabase       (HANDLE, DWORD, DWORD, LPDWORD);
  367. STDAPI_(BOOL  ) CeSetDatabaseInfo    (CEOID, CEDBASEINFO*);
  368. STDAPI_(CEOID)  CeWriteRecordProps   (HANDLE, CEOID, WORD, CEPROPVAL*);
  369. STDAPI_(HANDLE) CeFindFirstFile      (LPCWSTR, LPCE_FIND_DATA);
  370. STDAPI_(BOOL  ) CeFindNextFile       (HANDLE, LPCE_FIND_DATA);
  371. STDAPI_(BOOL  ) CeFindClose          (HANDLE);
  372. STDAPI_(DWORD ) CeGetFileAttributes  (LPCWSTR);
  373. STDAPI_(BOOL  ) CeSetFileAttributes  (LPCWSTR, DWORD);
  374. STDAPI_(HANDLE) CeCreateFile         (LPCWSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES, DWORD, DWORD, HANDLE);
  375. STDAPI_(BOOL  ) CeReadFile           (HANDLE, LPVOID, DWORD, LPDWORD, LPOVERLAPPED);
  376. STDAPI_(BOOL  ) CeWriteFile          (HANDLE, LPCVOID, DWORD, LPDWORD, LPOVERLAPPED);
  377. STDAPI_(BOOL  ) CeCloseHandle        (HANDLE);
  378. STDAPI_(BOOL  ) CeFindAllFiles       (LPCWSTR, DWORD, LPDWORD, LPLPCE_FIND_DATA);
  379. STDAPI_(BOOL  ) CeFindAllDatabases   (DWORD, WORD, LPWORD, LPLPCEDB_FIND_DATA);
  380. STDAPI_(DWORD ) CeGetLastError       (void);
  381. STDAPI_(DWORD ) CeSetFilePointer     (HANDLE, LONG, PLONG, DWORD);
  382. STDAPI_(BOOL  ) CeSetEndOfFile       (HANDLE);
  383. STDAPI_(BOOL  ) CeCreateDirectory    (LPCWSTR, LPSECURITY_ATTRIBUTES);
  384. STDAPI_(BOOL  ) CeRemoveDirectory    (LPCWSTR);
  385. STDAPI_(BOOL  ) CeCreateProcess      (LPCWSTR, LPCWSTR, LPSECURITY_ATTRIBUTES, LPSECURITY_ATTRIBUTES, BOOL, DWORD, LPVOID, LPWSTR, LPSTARTUPINFO, LPPROCESS_INFORMATION);
  386. STDAPI_(BOOL  ) CeMoveFile           (LPCWSTR, LPCWSTR);
  387. STDAPI_(BOOL  ) CeCopyFile           (LPCWSTR, LPCWSTR, BOOL);
  388. STDAPI_(BOOL  ) CeDeleteFile         (LPCWSTR);
  389. STDAPI_(DWORD ) CeGetFileSize        (HANDLE, LPDWORD);
  390. STDAPI_(LONG  ) CeRegOpenKeyEx       (HKEY, LPCWSTR, DWORD, REGSAM, PHKEY);
  391. STDAPI_(LONG  ) CeRegEnumKeyEx       (HKEY, DWORD, LPWSTR, LPDWORD, LPDWORD, LPWSTR, LPDWORD, PFILETIME);
  392. STDAPI_(LONG  ) CeRegCreateKeyEx     (HKEY, LPCWSTR, DWORD, LPWSTR, DWORD, REGSAM, LPSECURITY_ATTRIBUTES, PHKEY, LPDWORD);
  393. STDAPI_(LONG  ) CeRegCloseKey        (HKEY);
  394. STDAPI_(LONG  ) CeRegDeleteKey       (HKEY, LPCWSTR);
  395. STDAPI_(LONG  ) CeRegEnumValue       (HKEY, DWORD, LPWSTR, LPDWORD, LPDWORD, LPDWORD, LPBYTE, LPDWORD);
  396. STDAPI_(LONG  ) CeRegDeleteValue     (HKEY, LPCWSTR);
  397. STDAPI_(LONG  ) CeRegQueryInfoKey    (HKEY, LPWSTR, LPDWORD, LPDWORD, LPDWORD, LPDWORD, LPDWORD, LPDWORD, LPDWORD, LPDWORD, LPDWORD, PFILETIME);
  398. STDAPI_(LONG  ) CeRegQueryValueEx    (HKEY, LPCWSTR, LPDWORD, LPDWORD, LPBYTE, LPDWORD);
  399. STDAPI_(LONG  ) CeRegSetValueEx      (HKEY, LPCWSTR, DWORD, DWORD, LPBYTE, DWORD);
  400. STDAPI_(BOOL  ) CeGetStoreInformation(LPSTORE_INFORMATION);
  401. STDAPI_(INT   ) CeGetSystemMetrics   (INT);
  402. STDAPI_(INT   ) CeGetDesktopDeviceCaps(INT);
  403. STDAPI_(VOID  ) CeGetSystemInfo      (LPSYSTEM_INFO);
  404. STDAPI_(DWORD ) CeSHCreateShortcut   (LPWSTR, LPWSTR);
  405. STDAPI_(BOOL  ) CeSHGetShortcutTarget(LPWSTR, LPWSTR, INT);
  406. STDAPI_(BOOL  ) CeCheckPassword      (LPWSTR);
  407. STDAPI_(BOOL  ) CeGetFileTime        (HANDLE, LPFILETIME, LPFILETIME, LPFILETIME);
  408. STDAPI_(BOOL  ) CeSetFileTime        (HANDLE, LPFILETIME, LPFILETIME, LPFILETIME);
  409. STDAPI_(BOOL  ) CeGetVersionEx       (LPCEOSVERSIONINFO);
  410. STDAPI_(HWND  ) CeGetWindow          (HWND, UINT);
  411. STDAPI_(LONG  ) CeGetWindowLong      (HWND, int);
  412. STDAPI_(int   ) CeGetWindowText      (HWND, LPWSTR, int);
  413. STDAPI_(int   ) CeGetClassName       (HWND, LPWSTR, int);
  414. STDAPI_(VOID  ) CeGlobalMemoryStatus (LPMEMORYSTATUS);
  415. STDAPI_(BOOL  ) CeGetSystemPowerStatusEx(PSYSTEM_POWER_STATUS_EX, BOOL);
  416. STDAPI_(DWORD ) CeGetTempPath        (DWORD, LPWSTR);
  417. STDAPI_(DWORD ) CeGetSpecialFolderPath(int, DWORD, LPWSTR);
  418. STDAPI_(HANDLE) CeFindFirstDatabaseEx (PCEGUID, DWORD);
  419. STDAPI_(CEOID ) CeFindNextDatabaseEx (HANDLE, PCEGUID);
  420. STDAPI_(CEOID ) CeCreateDatabaseEx   (PCEGUID, CEDBASEINFO*);
  421. STDAPI_(BOOL  ) CeSetDatabaseInfoEx  (PCEGUID, CEOID, CEDBASEINFO*);
  422. STDAPI_(HANDLE) CeOpenDatabaseEx     (PCEGUID, PCEOID, LPWSTR, CEPROPID, DWORD, CENOTIFYREQUEST *);
  423. STDAPI_(BOOL  ) CeDeleteDatabaseEx   (PCEGUID, CEOID);
  424. STDAPI_(CEOID ) CeReadRecordPropsEx  (HANDLE, DWORD, LPWORD, CEPROPID*, LPBYTE*, LPDWORD, HANDLE);
  425. STDAPI_(CEOID ) CeWriteRecordProps   (HANDLE, CEOID, WORD, CEPROPVAL*);
  426. STDAPI_(BOOL  ) CeMountDBVol         (PCEGUID, LPWSTR, DWORD);
  427. STDAPI_(BOOL  ) CeUnmountDBVol       (PCEGUID);
  428. STDAPI_(BOOL  ) CeFlushDBVol         (PCEGUID);
  429. STDAPI_(BOOL  ) CeEnumDBVolumes      (PCEGUID, LPWSTR, DWORD);
  430. STDAPI_(BOOL  ) CeOidGetInfoEx       (PCEGUID, CEOID, CEOIDINFO*);
  431.  
  432. #endif // #ifndef UNDER_CE
  433.  
  434. #include <ceapimap.h>
  435.  
  436. #ifdef CONN_INTERNAL
  437. #include <prapi.h>  // internal defines
  438. #endif
  439.  
  440. #endif // #ifndef RAPI_H
  441.